#ifndef DRAWABLE_H
#define DRAWABLE_H

#include <vector>

#include "../containers/multisprite.h"
#include "../containers/renderdata.h"
#include "../containers/state.h"
#include "SDL2/SDL.h"

class Drawable {
public:
	RenderData render_data;
	MultiSprite multi_sprite;

	Drawable(RenderData render_data);
	Drawable(RenderData render_data, Sprite sprite);

	virtual void update(State& state, bool pressed_keys[], int& camera_x, int& camera_y);
	virtual void render(SDL_Renderer *renderer);

	virtual void register_sprite(Sprite sprite);
	virtual void scale(int w, int h);
	virtual void scale(float f);
};

#endif